[C] POSIX Threads
Publicado por Enzo de Brito Ferber 26/01/2009
[ Hits: 7.098 ]
Homepage: http://www.maximasonorizacao.com.br
O foco deste programa é fazer com que o processo filho criado por fork() não seja terminado quando o processo pai termina, e para isso, usei threads. Para terminar o programa, digite no terminal:
kill <child_pid>
O child_pid é mostrado ao usuário quando o programa é executado. Bem legal :)
// pthread2.c
/*
* Enzo Ferber : <enzo@veloxmail.com.br>
*
* POSIX Threads Test 2
* @ Exit parent and go on with child.
*
* $ gcc -lpthread -o pthread2 pthread2.c
*/
#include <stdio.h>
#include <stdlib.h>
#include <unistd.h> // getpid
#include <pthread.h> // POSIX Threads
#include <sys/types.h> // getpid
// child in infinite loop
void *childfunction ( void *ptr )
{
pthread_t self = pthread_self ();
pthread_detach ( self );
for ( ; ; )
{
printf ( "[*] Here I am again ... \n");
sleep (2);
}
}
// main function
int main ( int argc, char *argv[] )
{
pthread_t child;
int cret; // child pthread_create () return
// child
if ( !fork() )
{
printf ( "[*] Child proccess begining ... \n" );
cret = pthread_create ( &child, NULL, childfunction, NULL );
printf ( "[*] Child PID: %d\n", getpid () );
pthread_join ( child, NULL );
}
// parent
else
{
printf ( "[*] Parent PID: %d\n", getpid () );
printf ( "[*] Aborting parent ...\n" );
exit (0);
}
// end main
return 0;
}
// EoF
Jogo da Velha com IA invencivel
Thread, Courses, Shell e Aquivo
3º EP - Poli USP - Angry Birds (angry bixos)
Nenhum comentário foi encontrado.
SynapSeq - programa para estimular as ondas cerebrais
Por que seu __DIR__ falhou ou o "inferno" dos caminhos no PHP
Preparando-se para certificações da LPI através do LPI Lab
Migração de Arch Linux para repositórios CachyOS (Uso de Instruções v3 e v4)
Jogando "Magic" gratuitamente no Linux
Zoxide e fzf no bash para incrementar o uso do Terminal
As diferencas entre o clipboard comum e a selecao ativa
Arch Linux com repos do CachyOS para otimização ou usar Gentoo?
Abrir um arquivo URL pelo Clipper (6)
Eu aprendi o segredo das artes! hahaha (0)
Instalação Dual Boot Linux+Windows 11 [RESOLVIDO] (5)









